package 链表题.删除有序链表重复节点_留一个;

import 链表题.ListNode;

/**
 * 方法一: 正常方法(留一个)
 */
public class Test1 {

    public static ListNode deleteDuplicates(ListNode p) {
        if (p == null || p.next == null) {
            return p;
        }
        ListNode p1 = p;
        ListNode p2 = p.next;
        while(p2 != null) {
            if (p1.val == p2.val) {
                p1.next = p2.next;
                p2 = p1.next;
            } else {
                p1 = p1.next;
                p2 = p2.next;
            }
        }
        return p;
    }

    public static void main(String[] args) {
        ListNode o5 = new ListNode(4,null);
        ListNode o4 = new ListNode(4,o5);
        ListNode o3 = new ListNode(3,o4);
        ListNode o2 = new ListNode(1,o3);
        ListNode o1 = new ListNode(0,o2);
        ListNode o = new ListNode(0,o1);
        System.out.println(o);
        System.out.println(deleteDuplicates(o));
    }
}
